
package ConexionBD;
import java.sql.*;

/**
 *
 * @author diegoamt
 */
public class conexion{
    protected Connection con;
    
    private String driver = "org.postgresql.Driver";
    
    //UNIVERSIDAD CARLOS
//    private String dir = "jdbc:postgresql://pgsql:5432/carlosfos";
//    private String user = "carlosfos";
//    private String pass = "carlosfos";
    
    //CASA CARLOS
    private String dir = "jdbc:postgresql://localhost:5432/postgres";
    private String user = "postgres";
    private String pass = "carlos";
    
    public conexion(){
        
    }
    
    public boolean conectar(){
       boolean errorDriver = false;
       boolean conexionExitosa = true;
       
       try{
           Class.forName(driver);
       }catch(ClassNotFoundException ce){
           System.out.println("Error en el Driver");
           errorDriver = true;
           conexionExitosa = false;
       }
       
       if(!errorDriver){
        try {
                con = DriverManager.getConnection(dir, user, pass);
                System.out.println("conexion exitosa");
            } catch (SQLException ex) {
                System.out.println("Error al conectarse a la Base de Datos del sistema");
                conexionExitosa = false;
            }
       }
       return conexionExitosa;
    }
    
    public ResultSet ejecutarConsulta(String consulta){
        ResultSet resultado = null;
        try {
            PreparedStatement sentencia = con.prepareStatement(consulta);
            resultado = sentencia.executeQuery();
            
            
        } catch (SQLException ex) {
            System.out.println("Error al ejecutar consulta aqui");
            ex.printStackTrace();
        }
        
        return resultado;
    }
    
    public int ejecutarActualizacion(String actualizacion){
        int resultado = -1;
        
        try{
            Statement sentencia = con.createStatement();
            resultado = sentencia.executeUpdate(actualizacion);
        }catch (SQLException ex){
            System.out.println("Error al ejecutar la actualizacion");
            ex.printStackTrace();
        }
        
        return resultado;
    }
    
    public void desconectar(){
        try {
            con.close();
        } catch (SQLException eSQL) {
            System.out.println("Error al cerrar conexion");
        }
    }
    
    private Connection getConexion(){
        return con;
    }
    
}
